package com.example.springbootdemo.autowired;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.*;

@Configuration
@ComponentScan("com.example.springbootdemo.autowired")
// 按照环境 加载
@Profile("dev")
public class MyAutoConfigMainConfig {


    @Bean("dao")
    // 表示 注入时有冲突且没有指定@Qualifier，则首选该bean
    //@Primary
    public MyDao myDao(){
        final MyDao myDao = new MyDao();
        myDao.setDao("我是dao2");
        return  myDao;
    }

    @Bean

    // 这个 @Autowired 也可以省略 (会从spring容器中找 myDao 名称的bean)
    public MyService myService(// @Autowired
                                           MyDao myDao){
        return new MyService(myDao);
    }

}
